The present invention is related to computer software more specifically to computer software for updating a computer system.
Some computer software may be used to update files on a computer system. Updating files may include adding new files, deleting old files, and replacing some or all of one file with some or all of another file. The computer system receives instructions for updating the files and may receive new files. The new files may include files to be added or files used to replace existing files, or may contain instructions for modifying one or more existing files. The computer software performs the updates according to the instructions using the files it receives.
When the files on a computer system are updated, the computer system may not work properly due to an error in the instructions, one or more of the files used to perform the updates, or both the instructions and the files. When this happens, it is desirable to remove the update, thereby placing the computer system back to its state before the update was performed. If several updates have been applied, it may be desirable to remove some or all of the updates, for example to place the computer system back to its state before any updates were applied. Because computer software can occupy resources on the computer system, it is desirable to perform the above removal functions without requiring the installation on the computer system of special computer software to perform the removal alone.
What is needed is a method and apparatus that can allow one or more updates to be removed from a computer system without requiring the installation of additional computer software.
A method and apparatus creates instructions for removing an update using instructions used to perform the update. The instructions that will be used to perform the update are compared with any prior set of instructions already used to perform an update, and an adjusted set of installation instructions are produced. The state of objects on the computer system on which the installation will be performed is recorded. The instructions for removing the update are produced from the adjusted set of installation instructions and the recorded state of the objects.